package com.baizhi.filex;

import java.io.File;
import java.util.Date;

/**
 * File表示系统中的一个文件或者目录
 * 使用File可以
 *  1. 访问其表示的文件或者目录的属性信息(名字，大小，是否可读)
 *  2. 创建或者删除文集及其目录
 *  3. 访问一个目录中的子项
 *
 *  但是File不能访问文件数据
 */
public class FileDemo01 {
    public static void main(String[] args) {
        //如果创建一个File对象
        /*
            File(String pathname)
            File可以表示一个文件，但是不能创建文件

            File(String parent, String child)   parent 表示父路径， child表示文件

            File(File parent, String child)
         */
        //表示当前路径下的a.txt文件，如果当前路径下没有此文件，并不会去创建
        //只能操作a.txt,并不能操作a.txt中的内容，
  //      File file = new File("./javase_io/a.txt");
      //  File file = new File("./javase_io","a.txt");
//        File parent = new File("./javase_io");
//        File file = new File(parent,"a.txt");


        File file = new File("./javase_io/a.txt");

        //常用方法
        String name = file.getName(); //获取文件名
        System.out.println(name);

        boolean b = file.canRead(); //是否可读
        System.out.println("可读："+b);

        b = file.canWrite(); //是否可写
        System.out.println("可写："+b);

        b =  file.isHidden(); //是否隐藏
        System.out.println("隐藏："+b);

        //文件是否存在
        System.out.println(file.exists());
        //父目录
        System.out.println(file.getParent());
        //完整的路径,绝对路径
        System.out.println(file.getAbsolutePath());

        //最后修改时间
        long l = file.lastModified();
        System.out.println(new Date(l));

        System.out.println("文件字符量："+file.length());

    }
}
